Problemas con <vector>
Publicado por rraces (25 intervenciones) el 10/03/2006 12:14:29
Hola amigos tengo el siguiente código:
#include <iostream>
#include <vector>
#include <string>
#include <malloc.h>
#include <list>
using namespace std ;
class LeerFichero
{
public:
//constructor
LeerFichero(string ruta)
{
rutaFichero = ruta;
}
void PonerLogin(char * login)
{
vLogin.push_back(login);
}
void PonerEmail(char * email)
{
vEmail.push_back(email);
}
void ExtraerLogin()
{
/* list<char *>::iterator theIterator2;
cout << "theVector [ " ;
for (theIterator2 = vLogin.begin(); theIterator2 != vLogin.end();
theIterator2++)
{
cout << *theIterator2;
if (theIterator2 != vLogin.end()-1) cout << ", ";
}
cout << " ]" << endl ;*/
list<char*>::iterator i;
for (i = vLogin.begin(); i != vLogin.end(); ++i)
cout << *i << " ";
cout << endl;
system("pause");
}
int leerFicheroUsuarios();
int ExtraerLogin(char * cadena);
private:
list<char *> vLogin;
list<char *> vEmail;
string rutaFichero;
int capacidad;
};
void main(void)
{
char b[30];
char * p= "paco";
char * a= "juanito";
int i;
LeerFichero objeto("C:\\fichero.txt");
for(i=0;i <= strlen(p);i++)
{
b[i] = p[i];
}
objeto.PonerLogin(b);
objeto.PonerLogin("uasuario1");
objeto.PonerLogin("user2");
for(i=0;i <= strlen(a);i++)
{
b[i] = a[i];
}
objeto.PonerLogin(b);
objeto.ExtraerLogin();
} // FIN MAIN
Es un pequeño ejemplo de lo que quiero conseguir pero muestra el fallo me pasa con list y con vector, en teoría al llamar a ExtraerLogin me deberia mostrar:
paco usuario1 user2 juanito
pero muestra:
juanito usuario1 user2 juanito
A que se puede deber esto, q estoy haciendo mal.
Gracias y un saludo
#include <iostream>
#include <vector>
#include <string>
#include <malloc.h>
#include <list>
using namespace std ;
class LeerFichero
{
public:
//constructor
LeerFichero(string ruta)
{
rutaFichero = ruta;
}
void PonerLogin(char * login)
{
vLogin.push_back(login);
}
void PonerEmail(char * email)
{
vEmail.push_back(email);
}
void ExtraerLogin()
{
/* list<char *>::iterator theIterator2;
cout << "theVector [ " ;
for (theIterator2 = vLogin.begin(); theIterator2 != vLogin.end();
theIterator2++)
{
cout << *theIterator2;
if (theIterator2 != vLogin.end()-1) cout << ", ";
}
cout << " ]" << endl ;*/
list<char*>::iterator i;
for (i = vLogin.begin(); i != vLogin.end(); ++i)
cout << *i << " ";
cout << endl;
system("pause");
}
int leerFicheroUsuarios();
int ExtraerLogin(char * cadena);
private:
list<char *> vLogin;
list<char *> vEmail;
string rutaFichero;
int capacidad;
};
void main(void)
{
char b[30];
char * p= "paco";
char * a= "juanito";
int i;
LeerFichero objeto("C:\\fichero.txt");
for(i=0;i <= strlen(p);i++)
{
b[i] = p[i];
}
objeto.PonerLogin(b);
objeto.PonerLogin("uasuario1");
objeto.PonerLogin("user2");
for(i=0;i <= strlen(a);i++)
{
b[i] = a[i];
}
objeto.PonerLogin(b);
objeto.ExtraerLogin();
} // FIN MAIN
Es un pequeño ejemplo de lo que quiero conseguir pero muestra el fallo me pasa con list y con vector, en teoría al llamar a ExtraerLogin me deberia mostrar:
paco usuario1 user2 juanito
pero muestra:
juanito usuario1 user2 juanito
A que se puede deber esto, q estoy haciendo mal.
Gracias y un saludo
Valora esta pregunta


0